package cn.minhx.lab.design_patterns.command.f2;

import cn.minhx.lab.design_patterns.command.f2.cook.GuangDongCook;
import cn.minhx.lab.design_patterns.command.f2.cook.JiangSuCook;
import cn.minhx.lab.design_patterns.command.f2.cook.ShanDongCook;
import cn.minhx.lab.design_patterns.command.f2.cook.SiChuanCook;
import cn.minhx.lab.design_patterns.command.f2.cuisine.*;

public class Main {

    public static void main(String[] args) {
        // 菜系 + 厨师；广东（粤菜）、江苏（苏菜）、山东（鲁菜）、四川（川菜）
        ICuisine guangDoneCuisine = new GuangDongCuisine(new GuangDongCook());
        JiangSuCuisine jiangSuCuisine = new JiangSuCuisine(new JiangSuCook());
        ShanDongCuisine shanDongCuisine = new ShanDongCuisine(new ShanDongCook());
        SiChuanCuisine siChuanCuisine = new SiChuanCuisine(new SiChuanCook());

        // 点单
        XiaoEr xiaoEr = new XiaoEr();
        xiaoEr.order(guangDoneCuisine);
        xiaoEr.order(jiangSuCuisine);
        xiaoEr.order(shanDongCuisine);
        xiaoEr.order(siChuanCuisine);

        // 下单
        xiaoEr.placeOrder();
    }

}
